একটি Creative Text-to-Image প্রজেক্ট তৈরি করার জন্য আমরা Stable Diffusion ব্যবহার করতে পারি, যা একটি শক্তিশালী ডিফিউশন মডেল। এই প্রকল্পের মাধ্যমে আমরা একটি টেক্সট ইনপুটের ভিত্তিতে ইমেজ তৈরি করব। প্রকল্পটি বাস্তবায়ন করার জন্য নিচে ধাপগুলো উল্লেখ করা হলো।
ধাপ ১: প্রয়োজনীয় পরিবেশ সেটআপ
১.1. লাইব্রেরি ইনস্টল করা
প্রথমে, আপনার মেশিনে Python এবং Git ইনস্টল থাকতে হবে। এরপর Stable Diffusion সেটআপ করতে হবে।
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113
pip install transformers diffusers
pip install pillow matplotlib
১.2. GPU সাপোর্ট চেক করা
যদি আপনার কাছে NVIDIA GPU থাকে, তাহলে CUDA সাপোর্ট যাচাই করতে পারেন। এটি GPU ব্যবহার করে দ্রুত ইনফারেন্সের জন্য প্রয়োজনীয়।
import torch
print("GPU available: ", torch.cuda.is_available())
ধাপ ২: Stable Diffusion ইনস্টল করা
২.1. কোড রিপোজিটরি ক্লোন করা
Stable Diffusion এর কোড রিপোজিটরি ক্লোন করুন:
git clone https://github.com/CompVis/stable-diffusion
cd stable-diffusion
২.2. মডেল ওজন ডাউনলোড করা
Stable Diffusion এর জন্য প্রি-ট্রেন করা মডেল ওজন (weights) ডাউনলোড করুন। এটি Hugging Face থেকে পাওয়া যাবে। model.ckpt ফাইলটি stable-diffusion/models/ldm/stable-diffusion-v1 ডিরেক্টরিতে রাখুন।
ধাপ ৩: Text-to-Image স্ক্রিপ্ট তৈরি করা
import torch
from diffusers import StableDiffusionPipeline
from PIL import Image
# ডিভাইস চেক করা
device = "cuda" if torch.cuda.is_available() else "cpu"
# স্টেবল ডিফিউশন পাইপলাইন লোড করা
model_id = "CompVis/stable-diffusion-v-1-4"
pipe = StableDiffusionPipeline.from_pretrained(model_id)
pipe.to(device)
# টেক্সট প্রম্পট দিন
prompt = "A beautiful landscape with mountains and a river at sunset"
# ইমেজ জেনারেট করা
with torch.no_grad():
image = pipe(prompt).images[0]
# ইমেজ দেখানো
image.show()
# ইমেজ সংরক্ষণ করা
image.save("generated_image.png")
ধাপ ৪: প্রজেক্ট রান করা
- উপরের স্ক্রিপ্টটি একটি Python ফাইল (যেমন
text_to_image.py) হিসেবে সংরক্ষণ করুন। - টার্মিনাল বা কমান্ড প্রম্পট থেকে ফাইলটি রান করুন:
python text_to_image.py
ধাপ ৫: প্রজেক্ট কাস্টমাইজেশন
টেক্সট প্রম্পট পরিবর্তন: স্ক্রিপ্টে prompt পরিবর্তন করে বিভিন্ন ইমেজ জেনারেট করতে পারেন। উদাহরণস্বরূপ, "A futuristic cityscape" বা "A cat playing in a garden"।
স্টাইল এবং কন্ডিশনাল ইনপুট: আপনি স্টাইল বা বিশেষ থিম যুক্ত করে কাস্টম প্রম্পট তৈরি করতে পারেন। যেমন: "A surreal painting of a cat in a dreamlike landscape".
উপসংহার
এই ধাপে ধাপে নির্দেশনার মাধ্যমে আপনি একটি Creative Text-to-Image প্রজেক্ট তৈরি করতে পারবেন। Stable Diffusion ব্যবহার করে আপনি আপনার কাস্টম টেক্সট ইনপুটের ভিত্তিতে উচ্চমানের ইমেজ জেনারেট করতে সক্ষম হবেন। প্রজেক্টের জটিলতা বাড়ানোর জন্য কাস্টম ডেটাসেট দিয়ে মডেল ট্রেনিং বা ফাইন-টিউনিংও করতে পারেন।
Read more